iT邦幫忙

2026 iThome 鐵人賽

DAY 4
0
Software Development

Web API:從零開始探索公開 API 與資料應用系列 第 4

Day 4|URL、Endpoint 與 Parameters 是什麼?

  • 分享至 

  • xImage
  •  

一、前言
在上一篇認識了GET和POST,
GET主要用來取得資料,
而POST通常用來將資料送給伺服器。

在實際使用API時,我們常常會看到一串網址
例如:
https://example.com/books?title=Harry

乍看之下只是一個網址但其實這串網址裡面包含了很多資訊
例如:
API到底在哪裡?
我要查詢什麼資料?
查詢的條件又放在哪裡?

今天就要進一步了解API網址中常見的幾個概念
URL、Endpoint和Parameters。

**二、URL是什麼?

URL是Uniform Resource Locator的縮寫,
中文通常稱為「統一資源定位器」,
簡單來說URL就是網路上的「網址」,
例如我們平常使用瀏覽器時
輸入:
https://www.google.com
這就是一個URL。

而使用Web API時,
也會透過URL找到API所提供的服務
例如:
https://example.com/books
就可以把他想成:
「我要使用這個網站提供的books API。」
所以可以簡單理解:
URL = 網路上的位置

三、Endpoint是什麼?
Endpoint可以理解成API提供特定功能的「入口」
同一個網站可能不只有一個API,
而是有很多不同的Endpoint
例如:
/books
/movies
/weather
可能分別代表:
/books
→ 書籍相關資料
/movies
→ 電影相關資料
/weather
→ 天氣相關資料

因此Endpoint可以想成API裡面不同功能的入口
例如完整的URL:
https://example.com/books
其中:
https://example.com
可以想成API的基本網址,
後面的/books
就是其中一個Endpoint。

不過實際API的設計方式可能會有所不同,
因此不能把所有網址都完全用同一種方式切分。

四、Parameters是什麼?
如果今天只使用
/books
可能會直接取得全部書籍的資料,
但如果我只想找某一本書就需要告訴API
「我要找什麼?」
這時候就會使用Parameter(參數)。
例如:
/books?title=Harry
這裡的
title=Harry
就是一個查詢條件。
可以理解成
title是我要搜尋的項目 Harry是我要搜尋的內容。

如果有很多個條件通常會使用 & 連接。
例如:
/books?title=Harry&author=Rowling
就代表同時提供了
title = Harry
author = Rowling
這樣API就可以根據我們提供的條件進行查詢。

五、總結
到目前為止,已經學到API網址中幾個重要的概念
例如:
https://example.com/books?title=Harry
可以簡單理解成:
URL

https://example.com/books?title=Harry
Endpoint

/books
Parameter

title=Harry

再搭配前幾天學到的GET,就可以理解成:
Client→GET Request→/books?title=Harry→Server→Response→回傳符合條件的資料
這樣就能更清楚地知道,
我們在瀏覽器輸入一個API網址時,
實際上是在告訴伺服器「要使用哪個功能以及「想查詢什麼」。

目前學到這裡,已經可以把一個基本的API Request拆開來理解:
HTTP Method → Endpoint → Parameters → Server → Response

不過API回傳的資料通常不會只是單純的一段文字,
而是會使用一種很常見的資料格式。
例如我們前面看到的API回傳結果,常常會出現:
{
"title": "...",
"author": "..."
}
這種格式就是JSON。
下一篇就會來認識Web API中非常重要的資料格式:
JSON是什麼?為什麼API很常使用JSON?


上一篇
Day 3|GET跟POST 是什麼?API 怎敢告訴伺服器要做什麼?
下一篇
Day 5|JSON 是什麼?認識 API 常見的資料格式
系列文
Web API:從零開始探索公開 API 與資料應用6
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言